﻿using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using DataSetEscorpiusTourTableAdapters;

/// <summary>
/// Descripción breve de ClienteBLL
/// </summary>
public class ClienteBLL
{
	public ClienteBLL(){}

    //conexion con base de datos EscorpiusTour
    private CLIENTETableAdapter _ClienteAdapter = null;
    protected CLIENTETableAdapter Adapter
    {
        get
        {
            if (_ClienteAdapter == null)
                _ClienteAdapter = new CLIENTETableAdapter();

            return _ClienteAdapter;
        }
    }

    //insertar Cliente
    [System.ComponentModel.DataObjectMethodAttribute
    (System.ComponentModel.DataObjectMethodType.Insert, true)]
    public int insertarCliente(int rut_Cliente,
                                string nombre_Cliente,
                                int telefono_Cliente,
                                string direccion_Cliente,
                                string mail_Cliente,
                                string web_cliente,
                                string giro_cliente,
                                string tipo_cliente)
    {
        int filas_afectadas = Adapter.Insert(rut_Cliente,
                                             nombre_Cliente,
                                             telefono_Cliente,
                                             direccion_Cliente,
                                             mail_Cliente,
                                             web_cliente,
                                             giro_cliente,
                                             tipo_cliente);
        if (filas_afectadas == 0) return 0;
        else return 1;
    }

    //eliminar Cliente
    [System.ComponentModel.DataObjectMethodAttribute
    (System.ComponentModel.DataObjectMethodType.Delete, true)]
    public int eliminarCliente(int rut_Cliente)
    {
        int filas_afectadas = Adapter.Delete(rut_Cliente);
        if (filas_afectadas == 0) return 0;
        else return 1;
    }

    //actualizar Cliente
    [System.ComponentModel.DataObjectMethodAttribute
    (System.ComponentModel.DataObjectMethodType.Update, true)]
    public int actualizarCliente(string nombre_Cliente,
                                  int telefono_Cliente,
                                  string direccion_Cliente,
                                  string mail_Cliente,
                                  string web_cliente,
                                  string giro_cliente,
                                  string tipo_cliente,
                                  int rut_Cliente_original)
    {
        int filas_afectadas = Adapter.Update(nombre_Cliente,
                                             telefono_Cliente,
                                             direccion_Cliente,
                                             mail_Cliente,
                                             web_cliente,
                                             giro_cliente,
                                             tipo_cliente,
                                             rut_Cliente_original);
        if (filas_afectadas == 0) return 0;
        else return 1;
    }

    //seleccionar todas las Clientees
    [System.ComponentModel.DataObjectMethodAttribute
    (System.ComponentModel.DataObjectMethodType.Select, true)]
    public DataSetEscorpiusTour.CLIENTEDataTable mostrarClientes()
    {
        return Adapter.GetData();
    }

    //seleccionar todas las Clientees
    [System.ComponentModel.DataObjectMethodAttribute
    (System.ComponentModel.DataObjectMethodType.Select, true)]
    public DataSetEscorpiusTour.CLIENTEDataTable mostrarClientesByRut(int rut)
    {
        return Adapter.GetDataByRut(rut);
    }
}
